home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Tools & Utilities
/
Collection of Tools and Utilities.iso
/
bbsutil
/
qbbs276d.zip
/
STRUCT.276
< prev
next >
Wrap
Text File
|
1993-01-02
|
16KB
|
452 lines
(****************************************************************************)
(* Structures document for QuickBBS version 2.76 *)
(* Copyright 1991,1992 Pegasus Software *)
(* All Rights Reserved. *)
(****************************************************************************)
Const
MaxMsgAreas = 200;
MaxFileAreas = 200;
MaxEvents = 30;
type
FlagType = array[1..4] of Byte;
UserRecord = record
Name : String[35];
City : String[25];
Pwd : String[15];
DataPhone,
HomePhone : String[12];
LastTime : String[5];
LastDate : String[8];
Attrib : Byte;
Flags : FlagType;
Credit,
Pending,
TimesPosted,
HighMsgRead,
SecLvl,
Times,
Ups,
Downs,
UpK,
DownK : Word;
TodayK : Integer;
Elapsed,
Len : Integer;
CombinedPtr : Word; (* Record number in COMBINED.BBS *)
AliasPtr : Word; (* Record number in ALIAS.BBS *)
Birthday : Longint;
end;
(* Attrib:
Bit 0: Deleted
Bit 1: Screen Clear Codes
Bit 2: More Prompt
Bit 3: ANSI
Bit 4: No-Kill
Bit 5: Ignore Download Hours
Bit 6: ANSI Full Screen Editor
Bit 7: Sex (0=male, 1=female)
*)
type
UserActivityType = (InMenu, InDoor, InCallback,
ReadingMessages, WritingMessage,
ChattingWithSysop, ChattingWithUsers,
AnsweringQuestionaire, ViewingTextFile,
DownloadingFile, UploadingFile, ViewingFileList,
DoingFileSearch, LoggingOn, LoggingOff);
USERONrecord = record
Name : String[35];
Alias : String[35];
Line : Byte;
Baud : Word;
City : String[25];
DoNotDisturb : Boolean;
Conference : Byte;
Activity : UserActivityType;
Spare : Array[1..9] of Byte;
end;
AliasRecord = String[35]; (* for ALIAS.BBS *)
MsgToIdxRecord = String[35];
MsgTxtRecord = String[255];
{ Nodelist Records *************************************************** }
NodeTypes = (ntZone, ntRegion, ntNet, ntNode, ntPrefix);
NodeIdxRecord = record
NodeType : NodeTypes;
Number,
Cost : Word;
RawFile : Byte;
RawPos : LongInt;
end;
FileNameType = String[12];
NodeIncRecord = record
FileName : FileNameType;
DateStamp : LongInt;
end;
{ Message Records ******************************************************}
CombSelectType = array[1..MaxMsgAreas] of Boolean; (* for COMBINED.BBS *)
InfoRecord = record
LowMsg : Integer; { Lowest Message in File }
HighMsg : Integer; { Highest Message in File }
TotalActive : Integer; { Total Active Messages }
ActiveMsgs : array[1..MaxMsgAreas] of Integer;
end;
IdxRecord = record
MsgNum : Integer;
Board : Byte;
end;
HdrRecord = record
MsgNum,
ReplyTo,
SeeAlsoNum,
TRead : Integer;
StartRec : Word;
NumRecs,
DestNet,
DestNode,
OrigNet,
OrigNode : Integer;
DestZone,
OrigZone : Byte;
Cost : Integer;
MsgAttr,
NetAttr,
Board : Byte;
PostTime : String[5];
PostDate : String[8];
WhoTo,
WhoFrom : String[35];
Subj : String[72];
end;
(* Msg Attributes:
Bit 0: Deleted
Bit 1: Unmoved Outgoing Net Message
Bit 2: Is a Net Mail Message
Bit 3: Private
Bit 4: Received
Bit 5: Unmoved Outgoing Echo Message
Bit 6: Local Bit
Bit 7: Group Message
Net Attributes:
Bit 0: Kill Message after it's been sent
Bit 1: Sent OK
Bit 2: File(s) Attached
Bit 3: Crash Priority
Bit 4: Request Receipt
Bit 5: Audit Request
Bit 6: Is a Return Receipt
Bit 7: Freq
*)
{ Other Stuff *********************************************************** }
SysInfoRecord = record
CallCount : LongInt;
LastCallerName : String[35];
LastCallerAlias : String[35];
ExtraSpace : array[1..92] of Byte;
end;
TodayRecord = record
Name : String[35];
Alias : String[35];
Line : Byte;
City : String[25];
Date : Longint;
Time : Longint;
end;
TimeLogRecord = record
StartDate : String[8];
BusyPerHour : array[0..23] of Integer;
BusyPerDay : array[0..6] of Integer;
end;
LastReadType = Array[1..MaxMsgAreas] of Word;
MenuRecord = record
Typ : Byte;
Sec : Integer;
Flags : FlagType;
Str : String[75];
Key : Char;
Data : String[80];
Fg,
Bg : Byte;
end;
{ Configuration Information ********************************************** }
TypeMsgs = (Standard,Netmail,FMail,EchoMail);
KindMsgs = (Both,Private,Public,ROnly);
EventStat = (Deleted, Enabled, Disabled);
AskType = (No, Maybe, Yes);
ProtocolEnableType = (Never, MNP_Only, Always);
SecurityRecord = Record
Security : Word;
Flags : FlagType;
End;
FileAreaRecord = Record (* FILECFG.DAT *)
AreaName,
FilePath,
ListPath : String[66];
AllowUploads,
IgnoreKlimit,
IgnoreRatio : Boolean;
DlSec : SecurityRecord;
SearchSec : SecurityRecord;
TemplateSec : SecurityRecord;
CheckDupes : Boolean;
Group : Byte;
Spare : Array[3..12] of Byte;
End;
BoardRecord = record (* MSGCFG.DAT *)
Name : String[40];
Typ : TypeMsgs;
Kinds : KindMsgs;
Combined : Boolean;
Aliases : AskType;
Aka : Byte;
OriginLine : String[58];
AllowDelete : Boolean;
KeepCnt, (* Max # of Msgs to keep *)
KillRcvd, (* Kill received msgs after this many days *)
KillOld : Word; (* Kill msgs after this many days *)
ReadSec : SecurityRecord;
WriteSec : SecurityRecord;
TemplateSec : SecurityRecord;
SysopSec : SecurityRecord;
FileArea : Integer; (* for Fmail *)